Дискреционное разграничение прав в Linux. Основные атрибуты
2026-02-23
Панина Жанна Валерьевна студентка НКАбд-02-24 Российский университет дружбы народов им. П. Лумумбы 1132246710@rudn.ru https://github.com/zvpanina/study_2025-2026_infosec-intro
В условиях роста киберугроз и распространения операционных систем на базе Linux знание механизмов дискреционного разграничения доступа является необходимым для обеспечения информационной безопасности. Практическое понимание системы прав и атрибутов файлов позволяет предотвращать несанкционированный доступ к данным и корректно настраивать безопасность пользовательской среды.
Механизм дискреционного разграничения доступа в операционной системе Linux.
Атрибуты файлов и директорий (r, w, x), идентификаторы пользователей (uid, gid), группы пользователей, а также операции управления правами доступа (chmod, ls, lsattr и др.).
Цель работы - получение практических навыков работы в консоли с атрибутами файлов, закрепление теоретических основ дискреционного разграничения доступа в современных системах с открытым кодом на базе ОС Linux Задание:
В работе использовалась операционная система Linux (Rocky Linux), командная строка и стандартные утилиты администрирования (useradd, passwd, chmod, ls, id, whoami, cat, lsattr). Методы исследования включали практический эксперимент, анализ прав доступа, сравнение результатов выполнения команд и проверку разрешённых и запрещённых операций в зависимости от установленных атрибутов.
useradd guest. Задаю пароль для пользователя guest (использую учётную запись администратора): passwd guest (рис. 1).Рисунок 1: Создание новой учётной записи и выход из моей
Вхожу в систему от имени пользователя guest. (рис. 2).
Рисунок 2: Вход от имени guest
Определяю директорию,в которой я нахожусь командой pwd. (рис. 3). Вывод - /home/guest. Это домашняя директория пользователя (совпадает с приглашением guest@zvpanina:~$). Уточняю имя пользователя, его группу, а также группы, куда входит пользователь, командой id. Выведенные значения uid, gid и др. запомните. Сравните вывод id с выводом команды groups. Сравните полученную информацию об имени пользователя с данными, выводимыми в приглашении командной строки. Просмариваю файл /etc/passwd командой cat /etc/passwd
Рисунок 3: Команды pwd, whoami, id, group
Нахожу в нём свою учётную запись. Определяю uid и gid пользователя. (рис. 4). Сравниваю найденные значения с полученными в предыдущих пунктах. id → uid=1001, gid=1001, группа guest. groups → guest. Вывод совпадает. uid = 1001 gid = 1001 Значения совпадают с выводом id. Использую программу grep в качестве фильтра для вывода только строк, содержащих определённые буквенные сочетания. Имя пользователя в приглашении (guest@zvpanina) совпадает с выводом whoami и id.
Рисунок 4: Сравнение значений
Определяю существующие в системе директории. (рис. 5). Директория guest принадлежит пользователю guest. Права стандартные: drwx------. Проверим, какие расширенные атрибуты установлены на поддиректориях, находящихся в директории /home. Атрибуты своей директории видны. Атрибуты директории zvpanina недоступны Создаю в домашней директории поддиректорию dir1.
Определяю командами ls -l и lsattr, какие права доступа и расширенные атрибуты были выставлены на директорию dir1. Права по умолчанию: drwxr-xr-x . Расширенные атрибуты отсутствуют.
Рисунок 5: Проверка прав доступа и создание новой директории
Снимаю с директории dir1 все атрибуты командой chmod 000 dir1 и проверяю с её помощью правильность выполнения команды ls -l. (рис. 6). После chmod 000 dir1 права стали d---------. Доступ к директории запрещён. Пытаюсь создать в директории dir1 файл file1 командой echo "test" > /home/guest/dir1/file1. Создать файл не удалось из-за отсутствия прав (нет w и x на директорию). Проверяю командой ls -l /home/guest/dir1 действительно ли файл file1 не находится внутри директории dir1.
Рисунок 6: Проверка прав доступа и создание файла
Заполняю таблицу «Установленные права и разрешённые действия»
| Права директории | Права файла | Создание файла | Удаление файла | Запись в файл | Чтение файла | Смена директории | Просмотр файлов в директории | Переимено- вание файла | Смена атрибутов файла |
| d(000) | (000) | - | - | - | - | - | - | - | - |
| d(000) | (100) | - | - | - | - | - | - | - | - |
| d(000) | (200) | - | - | - | - | - | - | - | - |
| d(000) | (300) | - | - | - | - | - | - | - | - |
| d(000) | (400) | - | - | - | - | - | - | - | - |
| d(000) | (500) | - | - | - | - | - | - | - | - |
| d(000) | (600) | - | - | - | - | - | - | - | - |
| d(000) | (700) | - | - | - | - | - | - | - | - |
| d(100) | (000) | - | - | - | - | + | - | - | + |
| d(100) | (100) | - | - | - | - | + | - | - | + |
| d(100) | (200) | - | - | + | - | + | - | - | + |
| d(100) | (300) | - | - | + | - | + | - | - | + |
| d(100) | (400) | - | - | - | + | + | - | - | + |
| d(100) | (500) | - | - | - | + | + | - | - | + |
| d(100) | (600) | - | - | + | + | + | - | - | + |
| d(100) | (700) | - | - | + | + | + | - | - | + |
| d(200) | (000) | - | - | - | - | - | - | - | - |
| d(200) | (100) | - | - | - | - | - | - | - | - |
| d(200) | (200) | - | - | - | - | - | - | - | - |
| d(200) | (300) | - | - | - | - | - | - | - | - |
| d(200) | (400) | - | - | - | - | - | - | - | - |
| d(200) | (500) | - | - | - | - | - | - | - | - |
| d(200) | (600) | - | - | - | - | - | - | - | - |
| d(200) | (700) | - | - | - | - | - | - | - | - |
| d(300) | (000) | + | + | - | - | + | - | + | + |
| d(300) | (100) | + | + | - | - | + | - | + | + |
| d(300) | (200) | + | + | + | - | + | - | + | + |
| d(300) | (300) | + | + | + | - | + | - | + | + |
| d(300) | (400) | + | + | - | + | + | - | + | + |
| d(300) | (500) | + | + | - | + | + | - | + | + |
| d(300) | (600) | + | + | + | + | + | - | + | + |
| d(300) | (700) | + | + | + | + | + | - | + | + |
| d(400) | (000) | - | - | - | - | - | + | - | - |
| d(400) | (100) | - | - | - | - | - | + | - | - |
| d(400) | (200) | - | - | - | - | - | + | - | - |
| d(400) | (300) | - | - | - | - | - | + | - | - |
| d(400) | (400) | - | - | - | - | - | + | - | - |
| d(400) | (500) | - | - | - | - | - | + | - | - |
| d(400) | (600) | - | - | - | - | - | + | - | - |
| d(400) | (700) | - | - | - | - | - | + | - | - |
| d(500) | (000) | - | - | - | - | + | + | - | + |
| d(500) | (100) | - | - | - | - | + | + | - | + |
| d(500) | (200) | - | - | + | - | + | + | - | + |
| d(500) | (300) | - | - | + | - | + | + | - | + |
| d(500) | (400) | - | - | - | + | + | + | - | + |
| d(500) | (500) | - | - | - | + | + | + | - | + |
| d(500) | (600) | - | - | + | + | + | + | - | + |
| d(500) | (700) | - | - | + | + | + | + | - | + |
| d(600) | (000) | - | - | - | - | - | + | - | - |
| d(600) | (100) | - | - | - | - | - | + | - | - |
| d(600) | (200) | - | - | - | - | - | + | - | - |
| d(600) | (300) | - | - | - | - | - | + | - | - |
| d(600) | (400) | - | - | - | - | - | + | - | - |
| d(600) | (500) | - | - | - | - | - | + | - | - |
| d(600) | (600) | - | - | - | - | - | + | - | - |
| d(600) | (700) | - | - | - | - | - | + | - | - |
| d(700) | (000) | + | + | - | - | + | + | + | + |
| d(700) | (100) | + | + | - | - | + | + | + | + |
| d(700) | (200) | + | + | + | - | + | + | + | + |
| d(700) | (300) | + | + | + | - | + | + | + | + |
| d(700) | (400) | + | + | - | + | + | + | + | + |
| d(700) | (500) | + | + | - | + | + | + | + | + |
| d(700) | (600) | + | + | + | + | + | + | + | + |
| d(700) | (700) | + | + | + | + | + | + | + | + |
Таблица 2.1 «Установленные права и разрешённые действия»
| Операция | Минимальные права на директорию | Минимальные права на файл | ||
| Создание файла | wx | - | ||
| Удаление файла | wx | - | ||
| Чтение файла | x | r | ||
| Запись в файл | x | w | ||
| Переименование файла | wx | - | ||
| Создание поддиректории | wx | - | ||
| Удаление поддиректории | wx | - |
Таблица 2.2 “Минимальные права для совершения операций”
Были получены практические навыки работы в консоли с атрибутами файлов, закреплены теоретические основы дискреционного разграничения доступа в современных системах с открытым кодом на базе ОС Linux.
:::